﻿#define _CRT_SECURE_NO_WARNINGS
#include"Tree.h"

//输入：ABC##DE#G##F###
//建立一个二叉树：
//									A
//								   / 
//								  B
//								/   \
//							   C     D
//									/ \
//								   E   F
//									\
//									 G
//再将其复制，进行各种计算

int main()
{
	//建立二叉树
	BTNode* T = NULL;
	CreatBinaryTree(&T);
	//先序遍历出来看一下
	PrevOrder(T);
	printf("\n");
	BTNode* NewT = NULL;
	//复制二叉树
	Copy(T, &NewT);
	//先序遍历看一下
	PrevOrder(NewT);
	printf("\n");
	//计算二叉树的深度
	printf("%d\n", Depth(NewT));

	//统计二叉树中结点的个数
	printf("%d\n", NodeCount(NewT));

	//统计二叉树中度为1，结点的个数
	printf("%d\n", NodeCount_One(NewT));

	//统计二叉树中度为2，结点的个数
	printf("%d\n", NodeCount_Two(NewT));

	//统计二叉树中叶子结点的个数
	printf("%d\n", NodeCount_Zero(NewT));

	return 0;
}